from langchain_community.document_loaders import PyPDFLoader
if __name__ == '__main__':
    # 加载 PDF
    loaders_chinese = [
    # 故意添加重复文档，使数据混乱
    PyPDFLoader("./docs/matplotlib/第一回：Matplotlib初相识.pdf"),
    PyPDFLoader("./docs/matplotlib/第一回：Matplotlib初相识.pdf"),
    PyPDFLoader("./docs/matplotlib/第二回：艺术画笔见乾坤.pdf"),
    PyPDFLoader("./docs/matplotlib/第三回：布局格式定方圆.pdf"),
    PyPDFLoader("./docs/matplotlib/第四回：文字图例尽眉目.pdf"),
    PyPDFLoader("./docs/matplotlib/第五回：样式色彩秀芳华.pdf")
    ]
    docs = []
    for loader in loaders_chinese:
        docs.extend(loader.load())
    print(len(docs))

    # 分割文本
    from langchain.text_splitter import RecursiveCharacterTextSplitter

    text_splitter = RecursiveCharacterTextSplitter(
        chunk_size=1500,  # 每个文本块的大小。这意味着每次切分文本时，会尽量使每个块包含 1500 个字符。
        chunk_overlap=150  # 每个文本块之间的重叠部分。
    )
    splits = text_splitter.split_documents(docs)
    print(len(splits))